package com.example.common;

import java.lang.annotation.*;

/**
 * 操作日志注解
 */
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface OperationLog {
    
    /**
     * 操作模块
     */
    String module() default "";
    
    /**
     * 操作类型
     */
    String operationType() default "";
    
    /**
     * 操作描述
     */
    String description() default "";
    
    /**
     * 是否记录请求参数
     */
    boolean recordParams() default true;
    
    /**
     * 是否记录响应结果
     */
    boolean recordResult() default false;
    
    /**
     * 是否记录操作前后数据变化
     */
    boolean recordDataChange() default false;
    
    /**
     * 业务类型
     */
    String businessType() default "";
    
    /**
     * 日志级别
     */
    String logLevel() default "INFO";
}
